// C++测试文件
// 用于测试wcplus程序的代码统计功能

#include <iostream>
#include <string>
#include <vector>

using namespace std;

/* 
  多行注释示例
  这是多行注释的第二行
  第三行注释
 */

// 类定义
class Calculator {
private:
	double value;  // 私有成员变量
	
public:
	// 构造函数
	Calculator() : value(0.0) {
		// 初始化值
	}
	
	/* 加法操作 */
	double add(double x) {
		value += x;  // 累加
		return value;
	}
	
	// 减法操作
	double subtract(double x) {
		value -= x;
		return value;
	}
	
	/** 
	 * 乘法操作
	 * @param x 乘数
	 * @return 乘积结果
	 */
	double multiply(double x) {
		value *= x;
		return value;
	}
	
	// 获取当前值
	double getValue() const {
		return value;
	}
	
	// 重置计算器
	void reset() {
		value = 0.0;  // 重置为0
	}
};

// 空行测试

// 函数模板
template<typename T>
T maximum(T a, T b) {
	// 返回两个值中的较大值
	return (a > b) ? a : b;
}

/* 主函数 */
int main() {
	// 创建计算器对象
	Calculator calc;
	
	// 测试计算功能
	cout << "开始测试计算器..." << endl;
	
	calc.add(10.5);         // 添加10.5
	calc.subtract(2.5);     // 减去2.5
	calc.multiply(2.0);     // 乘以2
	
	// 输出结果
	cout << "最终结果: " << calc.getValue() << endl;
	
	// 测试模板函数
	int max_int = maximum(10, 20);
	double max_double = maximum(3.14, 2.71);
	
	cout << "整数最大值: " << max_int << endl;
	cout << "浮点数最大值: " << max_double << endl;
	
	/* 
	 * 程序结束注释
	 * 感谢使用
	 */
	cout << "程序执行完毕!" << endl;
	
	return 0;
}

// 文件结束注释
